// 封装http请求
// const baseURL = 'http://127.0.0.1:3000' // 指定的baseURL

function useCustomFetch(path: string, options?: any) {
  const token = useCookie('token')

  // const url = `${baseURL}${path}`

  // 如果用户在options中自定义了headers请求头，则此代码会保留用户的设置，并添加Authorization字段。（存在相同属性时，后者会覆盖前者）
  const mergedOptions = {
    timeout: 5000, // 5秒后终止请求
    ...options,
    headers: {
      ...(options?.headers || {}),
      Authorization: `Bearer ${token}`
    }
  }

  const { data, pending, error, refresh } = useFetch(path, mergedOptions)

  return { data, pending, error, refresh }
}

export default useCustomFetch